<html>
<head><meta charset="utf-8"><title>async-await · t-compiler · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/index.html">t-compiler</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html">async-await</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="159172639"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159172639" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159172639">(Feb 22 2019 at 17:08)</a>:</h4>
<p>So <span class="user-mention" data-user-id="127859">@Taylor Cramer</span> what I was saying in the call was that I feel like, from the impl POV, I'd feel better if we had a "plan" for how we were going to maintain the feature and fix the bugs. I'm a bit nervous about stabilizing and then having to scramble to fix bugs that are now exposed to stable code</p>



<a name="159172684"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159172684" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159172684">(Feb 22 2019 at 17:09)</a>:</h4>
<p>It seems to me like this was a big hole in our planning at the all hands, in that this is a major feature effort that you've been carrying solo and sort of flew under my radar :(</p>



<a name="159172707"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159172707" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159172707">(Feb 22 2019 at 17:09)</a>:</h4>
<p>(Which is to your credit that I've not had to notice it very much -- well you + <span class="user-mention" data-user-id="116466">@Zoxc</span>, since it's mostly desugaring to generators)</p>



<a name="159173258"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159173258" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159173258">(Feb 22 2019 at 17:15)</a>:</h4>
<p>(cc <span class="user-mention" data-user-id="203289">@boats</span>)</p>



<a name="159176570"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159176570" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Taylor Cramer <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159176570">(Feb 22 2019 at 17:58)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> Is there a "plan" similar to what you have in mind that we've had for previous features?</p>



<a name="159177483"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159177483" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Taylor Cramer <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159177483">(Feb 22 2019 at 18:09)</a>:</h4>
<p>(asking because I think it'd be helpful for getting an idea of what sort of thing you have in mind)</p>



<a name="159177595"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159177595" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Taylor Cramer <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159177595">(Feb 22 2019 at 18:10)</a>:</h4>
<p>IMO previously it has felt more comfortable because the person who implemented the feature probably wouldn't have had as high of latency in fixing bugs as I have at the moment...</p>



<a name="159177644"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159177644" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159177644">(Feb 22 2019 at 18:11)</a>:</h4>
<p><span class="user-mention" data-user-id="127859">@Taylor Cramer</span> Not necessarily. I don't really mean a "plan" as a written document per se, mostly that we feel like we know how we plan to address the outstanding bugs and feel comfortable about it.</p>



<a name="159177657"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159177657" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159177657">(Feb 22 2019 at 18:11)</a>:</h4>
<p>But also we've traditionally been not very good at this</p>



<a name="159177744"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159177744" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159177744">(Feb 22 2019 at 18:12)</a>:</h4>
<p>We said during the triage that there were kind of two categories of bugs: those where we sort of have no idea what is going on, and those where we have a vague plan to fix</p>



<a name="159177773"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159177773" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159177773">(Feb 22 2019 at 18:12)</a>:</h4>
<p>Particularly around the lifetime issues it seems like that plan is maybe a bit too vague</p>



<a name="159177807"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159177807" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159177807">(Feb 22 2019 at 18:13)</a>:</h4>
<p>I guess it'd be good to dig into those issues that are a bit unknown and see if we can diagnose some of their causes</p>



<a name="159177890"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159177890" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Taylor Cramer <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159177890">(Feb 22 2019 at 18:14)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> yeah, the biggest thing that worries me about the lifetimes issue is that the only plan I have that starts looking like a "correct" implementation would basically re-implement lifetime elision during lowering</p>



<a name="159178075"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159178075" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159178075">(Feb 22 2019 at 18:16)</a>:</h4>
<p>OK. I'm trying to decide a bit what to do with myself this afternoon. Feeling kind of drained from a long week. Maybe I'll dig into some of those bugs a bit, particularly the weird ICE-y ones</p>



<a name="159178086"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159178086" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159178086">(Feb 22 2019 at 18:16)</a>:</h4>
<p>and/or put a bit of thought into this</p>



<a name="159178119"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159178119" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159178119">(Feb 22 2019 at 18:17)</a>:</h4>
<p>One thing that is a bit unknown for me: do we think maybe we want to try to make a more "native" implementation?</p>



<a name="159178972"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159178972" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159178972">(Feb 22 2019 at 18:27)</a>:</h4>
<p>I'm not 100% sure what that means, but I feel like it's been tossed about a few times</p>



<a name="159178985"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159178985" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159178985">(Feb 22 2019 at 18:27)</a>:</h4>
<p>Is it just a matter of error messages?</p>



<a name="159179005"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159179005" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159179005">(Feb 22 2019 at 18:27)</a>:</h4>
<p><span class="user-mention" data-user-id="127859">@Taylor Cramer</span> maybe we should make an async-await stream..?</p>



<a name="159180553"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159180553" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Taylor Cramer <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159180553">(Feb 22 2019 at 18:45)</a>:</h4>
<p>I'm not sure I know what a more "native" implementation would look like</p>



<a name="159180577"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159180577" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Taylor Cramer <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159180577">(Feb 22 2019 at 18:45)</a>:</h4>
<p>"Native" to me sounds like "touches more parts of the compiler after lowering"</p>



<a name="159181078"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159181078" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159181078">(Feb 22 2019 at 18:50)</a>:</h4>
<p>I'm also not sure. I feel like the current, generator-based lowering feels a lot like what we want -- the main thing is probably the <strong>macro</strong> that expands to <code>yield</code> being a problem</p>



<a name="159181089"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159181089" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159181089">(Feb 22 2019 at 18:50)</a>:</h4>
<p>i.e., if we had a keyword, we could leave some span hints and things so that we know to customize error messages</p>



<a name="159181128"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159181128" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159181128">(Feb 22 2019 at 18:51)</a>:</h4>
<p>I guess one case might have to do with the error message around the return type hints and so forth, but I feel like we can still thread that info through by lowering in careful ways, or other small tweaks</p>



<a name="159181256"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159181256" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159181256">(Feb 22 2019 at 18:52)</a>:</h4>
<p>as an aside, I'm thinking we should make a stream for async-await, at minimum, and I'd actually like to try and do a "real" working group -- meaning basically that we establish a meeting time, and try to start drawing up a plan for the remaining issues etc, and kind of reach out to some people to help.</p>
<p>Given the state of the impl, maybe we don't want to reach out to totally new hackers, but I bet some "journeypeople" like <span class="user-mention" data-user-id="116107">@davidtwco</span>, <span class="user-mention" data-user-id="116266">@Santiago Pastorino</span>, or others might be interested.</p>



<a name="159181290"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159181290" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159181290">(Feb 22 2019 at 18:53)</a>:</h4>
<p>I'm not really clear on what process we should/would use for "new working groups" =) but I feel like this is obviously something that we as a project are trying to ship so it makes sense.</p>



<a name="159181408"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159181408" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159181408">(Feb 22 2019 at 18:54)</a>:</h4>
<p>Let me just rope in <span class="user-group-mention" data-user-group-id="492">@T-compiler</span> I guess -- I'm discussing here that I think we want to have an "async-await working group", focused on the work needed to ship the <code>async fn</code> feature. This work has heretofore been done primarily by <span class="user-mention" data-user-id="127859">@Taylor Cramer</span> but it feels like a clear objective, one that we just kind of overlooked in the list. </p>
<p>Seeing as we're still in this primordial phase, I don't have a clear picture on how to "request" to start a WG -- is there any objection to me "creating" the WG (i.e., making a template, making a Zulip stream, etc)?</p>



<a name="159183673"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159183673" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Esteban Küber <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159183673">(Feb 22 2019 at 19:24)</a>:</h4>
<p>Re: diagnostics, the await macro could be turned into an intrinsic which would buy you as much control as having the stabilized keyword.</p>



<a name="159183720"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159183720" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Esteban Küber <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159183720">(Feb 22 2019 at 19:25)</a>:</h4>
<p>It'd be a good idea to do so regardless because the only thing that would have to change once the syntax dust settles would be the parser.</p>



<a name="159188378"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159188378" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Taylor Cramer <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159188378">(Feb 22 2019 at 20:30)</a>:</h4>
<p>I also think that the issues around <code>yield</code> will disappear quickly when we decide on an <code>await</code>-keyword-based syntax and implement it, and I think the desugaring to <code>yield</code> should be relatively easy to hide from the user</p>



<a name="159188405"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159188405" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Taylor Cramer <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159188405">(Feb 22 2019 at 20:31)</a>:</h4>
<p>just as the desugaring of <code>?</code> to a <code>match</code> is fairly transparent</p>



<a name="159188454"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159188454" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159188454">(Feb 22 2019 at 20:31)</a>:</h4>
<p>right</p>



<a name="159188782"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159188782" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Taylor Cramer <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159188782">(Feb 22 2019 at 20:36)</a>:</h4>
<p>I'm much more concerned about the implementation and diagnostics around the lifetime issues</p>



<a name="159360918"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159360918" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159360918">(Feb 25 2019 at 18:44)</a>:</h4>
<p>OK, so nobody raised any <em>objections</em></p>



<a name="159361015"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159361015" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159361015">(Feb 25 2019 at 18:45)</a>:</h4>
<p><span class="user-mention" data-user-id="127859">@Taylor Cramer</span> shall we schedule some time to develop an async-await impl problem roadmap? I would like to kind of place the bugs that we found in that triage in an order and maybe dig into the them .. I imagine the lifetime limitations are sort of top priority, so we could probably do the "Pre-triage" here in Zulip and use a call to really dig into the details?</p>



<a name="159362992"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159362992" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Taylor Cramer <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159362992">(Feb 25 2019 at 19:07)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> sure, I'd be happy to meet again to talk through the impl schedule</p>



<a name="159363018"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159363018" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Taylor Cramer <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159363018">(Feb 25 2019 at 19:07)</a>:</h4>
<p>Although I think I'd actually put the drop-order-of-arguments stuff above the lifetime issues in terms of priority</p>



<a name="159363025"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159363025" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Taylor Cramer <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159363025">(Feb 25 2019 at 19:07)</a>:</h4>
<p>since that's a more serious backcompat hazard, I think</p>



<a name="159368076"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159368076" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159368076">(Feb 25 2019 at 20:11)</a>:</h4>
<p><span class="user-mention" data-user-id="127859">@Taylor Cramer</span> indeed, though it seems .. well, I guess there's probably some impl questions there, in terms of how to achieve whatever it is that we want, but I'd like to first know what we think we want</p>



<a name="159368093"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159368093" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159368093">(Feb 25 2019 at 20:11)</a>:</h4>
<p>I have a meta question on that point actually</p>



<a name="159368103"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159368103" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159368103">(Feb 25 2019 at 20:11)</a>:</h4>
<p>can you think of <code>async fn</code> in terms of a desugaring to async blocks?</p>



<a name="159368181"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159368181" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159368181">(Feb 25 2019 at 20:12)</a>:</h4>
<p>(In general, my <em>personal</em> preference for these sorts of questions is to establish a definite desugaring, and try to answer questions of the semantics in terms of that desugaring)</p>



<a name="159376443"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/async-await/near/159376443" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/async-await.html#159376443">(Feb 25 2019 at 22:00)</a>:</h4>
<p>OK, I created a calendar event for an investigation of various issues tomorrow. We should probably decide which ones to dig into =)</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>